var Base = {};

/**
 * jQuery扩展，判断是否具有某个属性
 */
$.hasAttr = function(attr) {
	if (typeof($("#aid").attr("rel")) == "undefined") {
		return false;
	}

	return true;
}

/**
 * url 发送请求的地址。 
 * data 发送到服务器的数据，必须为json对象。 
 * async 默认值:true。默认设置下，所有请求均为异步请求。如果需要发送同步请求，请将此选项设置为 false。 
 * successfn 成功回调函数。
 */
Base.ajax = function(ajaxConfig) {
	var url = ajaxConfig.url;
	var async = ajaxConfig.async;
	var data = ajaxConfig.data;
	data = (data == null || data == "" || typeof(data) == "undefined") ? {} : data;
	var successfn = ajaxConfig.success;

	// 增加时间戳，防止缓存
	data["date"] = new Date().getTime();
	
	// 参数加密
	var encodeData = ajaxParamEncodeURIComponent(data);

	$.ajax({
		type: "post",
		async: async,
		data: encodeData,
		url: url,
		dataType: "json",
		success: function(d) {
			successfn(d);
		}
	});
};

/**
 * 对ajax参数进行中文转码，base64加密处理
 * 
 * @param param
 */
function ajaxParamEncodeURIComponent(paramJSON) {
	var paramObj = {};
	for (var param in paramJSON) {
		var key = param;
		var value = paramJSON[key];

		// 中文转码
		value = encodeURIComponent(value);

		// base64加密
		value = value.EncodeBase64();

		paramObj[key] = value;
	}

	return paramObj;
}

String.prototype.UTF16To8 = function() {
	var str = this;
	var ret = "",
		i, len, charCode;

	len = str.length;
	for (i = 0; i < len; i++) {
		charCode = str.charCodeAt(i);
		if ((charCode >= 0x0001) && (charCode <= 0x007F)) {
			ret += str.charAt(i);
		} else if (charCode > 0x07FF) {
			ret += String.fromCharCode(0xE0 | ((charCode >> 12) & 0x0F));
			ret += String.fromCharCode(0x80 | ((charCode >> 6) & 0x3F));
			ret += String.fromCharCode(0x80 | ((charCode >> 0) & 0x3F));
		} else {
			ret += String.fromCharCode(0xC0 | ((charCode >> 6) & 0x1F));
			ret += String.fromCharCode(0x80 | ((charCode >> 0) & 0x3F));
		}
	}
	return ret;
}

String.prototype.UTF8To16 = function() {
	var str = this;
	var ret = "",
		i = 0,
		len, charCode;
	var charCode2, charCode3;

	len = str.length;
	while (i < len) {
		charCode = str.charCodeAt(i++);
		switch (charCode >> 4) {
			case 0:
			case 1:
			case 2:
			case 3:
			case 4:
			case 5:
			case 6:
			case 7:
				ret += str.charAt(i - 1);
				break;
			case 12:
			case 13:
				charCode2 = str.charCodeAt(i++);
				ret += String.fromCharCode(((charCode & 0x1F) << 6) | (charCode2 & 0x3F));
				break;
			case 14:
				charCode2 = str.charCodeAt(i++);
				charCode3 = str.charCodeAt(i++);
				ret += String.fromCharCode(((charCode & 0x0F) << 12) | ((charCode2 & 0x3F) << 6) | ((charCode3 & 0x3F) << 0));
				break;
		}
	}

	return ret;
}

/**
 * Base64 转码
 */
String.prototype.EncodeBase64 = function() {
	var str = this;

	// 由于Javascript内部的字符串，都以utf-16的形式进行保存，所以需要转成utf-8
	str = str.UTF16To8();
	var base64Chars = BASE64_KEY;

	var ret = "",
		i = 0,
		len;
	var charCode1, charCode2, charCode3;

	len = str.length;
	while (i < len) {
		// 返回字符的 Unicode编码，并按为与
		charCode1 = str.charCodeAt(i++) & 0xff;
		// %3余数为1
		if (i == len) {
			// charCode1取高六位转换成字符
			ret += base64Chars.charAt(charCode1 >> 2);

			// charCode1取最低两位转换成字符
			ret += base64Chars.charAt((charCode1 & 0x3) << 4);

			// 剩余用==补齐
			ret += "==";
			break;
		}

		charCode2 = str.charCodeAt(i++);
		// %3余数为2
		if (i == len) {
			// charCode1取高六位转换成字符
			ret += base64Chars.charAt(charCode1 >> 2);

			// charCode1取低两位，charCode2取高四位转换成字符
			ret += base64Chars.charAt(((charCode1 & 0x3) << 4) | ((charCode2 & 0xF0) >> 4));

			// charCode2取低四位转换成字符
			ret += base64Chars.charAt((charCode2 & 0xF) << 2);

			// 剩余用=补齐
			ret += "=";
			break;
		}
		charCode3 = str.charCodeAt(i++);

		// charCode1取高六位转换成字符
		ret += base64Chars.charAt(charCode1 >> 2);

		// charCode1取低两位，charCode2取高四位转换成字符
		ret += base64Chars.charAt(((charCode1 & 0x3) << 4) | ((charCode2 & 0xF0) >> 4));

		// charCode2取低四位，charCode3取高两位转换成字符
		ret += base64Chars.charAt(((charCode2 & 0xF) << 2) | ((charCode3 & 0xC0) >> 6));

		// charCode3取最低六位转换成字符
		ret += base64Chars.charAt(charCode3 & 0x3F);
	}
	return ret;
}

/**
 * Base64 解码
 */
String.prototype.DecodeBase64 = function() {
	var str = this;

	str = str.UTF16To8();
	var base64Chars = BASE64_KEY;

	var charCode1, charCode2, charCode3, charCode4;
	var c1, c2, c3;
	var ret = [],
		i = 0,
		len;

	len = str.length;
	while (i < len) {
		charCode1 = base64Chars.indexOf(str.charAt(i++)) & 0xff;
		charCode2 = base64Chars.indexOf(str.charAt(i++)) & 0xff;
		charCode3 = base64Chars.indexOf(str.charAt(i++)) & 0xff;
		charCode4 = base64Chars.indexOf(str.charAt(i++)) & 0xff;

		c1 = (charCode1 << 2) | (charCode2 >> 4);
		c2 = ((charCode2 & 0xF) << 4) | (charCode3 >> 2);
		c3 = ((charCode3 & 0x3) << 6) | charCode4;

		ret.push(String.fromCharCode(c1));

		if (charCode3 != 0xff) {
			ret.push(String.fromCharCode(c2));
		}
		if (charCode4 != 0xff) {
			ret.push(String.fromCharCode(c3));
		}
	}
	ret = ret.join("");
	return ret.UTF8To16();
}

/**
 * ajax异常处理
 */
$(document).ajaxComplete(function(whoareyou, request, settings) {
	if (request != undefined) {
		var data = request.responseText;
		if (data.length > 0) {
			if (data.indexOf("ajax404ajax") != -1) {
				window.location.href = errorUrl;
				/*alert("您无权限使用当前功能，请联系管理员！");*/
			} else if (data.indexOf("ajaxPwdModifyajax") != -1) {
				top.window.location.href = pwdModifyUrl;
			}
		}
		data = null;
	}
});

/**
 * 数组排重
 */
Array.prototype.unique = function() {
	var res = [],
		hash = {};
	for (var i = 0, elem;
		(elem = this[i]) != null; i++) {
		alert(hash[elem]);
		if (!hash[elem]) {
			res.push(elem);
			hash[elem] = true;
		}
	}
	return res;
}

/**
 * 数组排重
 */
Array.prototype.unique2 = function() {
	return this.sort().join(",,")
		.replace(/(,|^)([^,]+)(,,\2)+(,|$)/g, "$1$2$4")
		.replace(/,,+/g, ",").replace(/,$/, "").split(",");
}

/**
 * 
 * @Description : 数字翻滚，基于图片
 * @param dom
 * @param number
 * @return void
 * 
 * @author : wucm
 * @date : 2015年5月31日 下午9:45:52
 * 
 */
function setNumber(dom, number) {
	if (null == number || typeof number == "undefined" || number == "undefined") {
		return;
	}

	dom.empty().attr("num", number);;
	var n = String(number),
		len = n.length;

	// 如果新的数字短于当前的，要移除多余的i
	if (dom.find("i").length > len) {
		dom.find("i:gt(" + (len - 1) + ")").remove();
	}

	// 移除千分位分隔符
	dom.find("b").remove();

	// 开始填充每一位
	for (var i = 0; i < len; ++i) {
		// 位数不足要补
		if (dom.find("i").length < len) {
			dom.append("<i class='num'></i>");
		}

		var obj = dom.find("i").eq(i);
		var y = -20 * parseInt(n.charAt(i), 10);
		// 处理小数点
		if (isNaN(y)) {
			y = -20 * 10;
		}

		// 加分隔符
		if (i < len - 1 && (len - i - 1) % 3 == 0)
			$("<b></b>").insertAfter(obj);

		// 利用动画变换数字
		obj.animate({
			backgroundPosition: "0 " + -170 + "px"
		}, 500, function() {
			obj.css({
				"background-position": "0 0"
			});
		}).animate({
			backgroundPosition: "0 " + y + "px"
		}, 500);
	}
}

/**
 * 
 * @Description : 数字翻滚，基于图片
 * @param dom
 * @param number
 * @return void
 * 
 * @author : wucm
 * @date : 2015年5月31日 下午9:46:09
 * 
 */
function setNumberSmall(dom, number) {
	if (null == number || typeof number == "undefined" || number == "undefined") {
		return;
	}

	dom.empty().attr("num", number);;
	var n = String(number),
		len = n.length;

	// 如果新的数字短于当前的，要移除多余的i
	if (dom.find("i").length > len) {
		dom.find("i:gt(" + (len - 1) + ")").remove();
	}

	// 移除千分位分隔符
	dom.find("b").remove();

	// 开始填充每一位
	for (var i = 0; i < len; ++i) {
		// 位数不足要补
		if (dom.find("i").length < len) {
			dom.append("<i class='small'></i>");
		}

		var obj = dom.find("i").eq(i);
		var y = -20 * parseInt(n.charAt(i), 10);
		// 处理小数点
		if (isNaN(y)) {
			y = -20 * 10;
		}

		// 加分隔符
		if (i < len - 1 && (len - i - 1) % 3 == 0)
			$("<b></b>").insertAfter(obj);

		// 利用动画变换数字
		obj.animate({
			backgroundPosition: "1 " + -170 + "px"
		}, 500, function() {
			obj.css({
				"background-position": "1 0"
			});
		}).animate({
			backgroundPosition: "1 " + y + "px"
		}, 500);
	}
}

/**
 * 
 * @Description : 数字翻滚，基于图片
 * @param dom
 * @param number
 * @return void
 * 
 * @author : wucm
 * @date : 2015年5月31日 下午9:46:15
 * 
 */
function setNumberBig(dom, number) {
	if (null == number || typeof number == "undefined" || number == "undefined") {
		return;
	}

	dom.empty().attr("num", number);
	var n = String(number),
		len = n.length;

	// 如果新的数字短于当前的，要移除多余的i
	if (dom.find("i").length > len) {
		dom.find("i:gt(" + (len - 1) + ")").remove();
	}

	// 移除千分位分隔符
	dom.find("b").remove();

	// 开始填充每一位
	for (var i = 0; i < len; ++i) {
		// 位数不足要补
		if (dom.find("i").length < len) {
			dom.append("<i class='big'></i>");
		}

		var obj = dom.find("i").eq(i);
		var y = -40 * parseInt(n.charAt(i), 10);
		// 处理小数点
		if (isNaN(y)) {
			y = -40 * 10;
		}

		// 加分隔符
		if (i < len - 1 && (len - i - 1) % 3 == 0)
			$("<b></b>").insertAfter(obj);

		// 利用动画变换数字
		obj.animate({
			backgroundPosition: "0 " + -370 + "px"
		}, 500, function() {
			obj.css({
				"background-position": "0 0"
			});
		}).animate({
			backgroundPosition: "0 " + y + "px"
		}, 500);
	}
};

/**
 * 
 * @Description : 数字翻滚，基于图片，红色字体 
 * @param dom
 * @param number
 * @return void
 * 
 * @author : zhangjp
 * 
 */
function setNumberBigRed(dom, number) {
	if (null == number || typeof number == "undefined" || number == "undefined") {
		return;
	}

	dom.empty().attr("num", number);
	var n = String(number),
		len = n.length;

	// 如果新的数字短于当前的，要移除多余的i
	if (dom.find("i").length > len) {
		dom.find("i:gt(" + (len - 1) + ")").remove();
	}

	// 移除千分位分隔符
	dom.find("b").remove();

	// 开始填充每一位
	for (var i = 0; i < len; ++i) {
		// 位数不足要补
		if (dom.find("i").length < len) {
			dom.append("<i class='big_red'></i>");
		}

		var obj = dom.find("i").eq(i);
		var y = -40 * parseInt(n.charAt(i), 10);
		// 处理小数点
		if (isNaN(y)) {
			y = -40 * 10;
		}

		// 加分隔符
		if (i < len - 1 && (len - i - 1) % 3 == 0)
			$("<b></b>").insertAfter(obj);

		// 利用动画变换数字
		obj.animate({
			backgroundPosition: "0 " + -370 + "px"
		}, 500, function() {
			obj.css({
				"background-position": "0 0"
			});
		}).animate({
			backgroundPosition: "0 " + y + "px"
		}, 500);
	}
};
/**
 * 
 * @Description : 数字翻滚，基于图片
 * @param dom
 * @param number
 * @return void
 * 
 * @author : wucm
 * @date : 2015年5月31日 下午9:46:15
 * 
 */
function setNumberScreenSmall(dom, number) {
	if (null == number || typeof number == "undefined" || number == "undefined") {
		return;
	}

	dom.empty().attr("num", number);
	var n = String(number),
		len = n.length;

	// 如果新的数字短于当前的，要移除多余的i
	if (dom.find("i").length > len) {
		dom.find("i:gt(" + (len - 1) + ")").remove();
	}

	// 移除千分位分隔符
	dom.find("b").remove();

	// 开始填充每一位
	for (var i = 0; i < len; ++i) {
		// 位数不足要补
		if (dom.find("i").length < len) {
			dom.append("<i class='screenSmall'></i>");
		}

		var obj = dom.find("i").eq(i);
		var y = -40 * parseInt(n.charAt(i), 10);
		// 处理小数点
		if (isNaN(y)) {
			y = -40 * 10;
		}

		// 加分隔符
		if (i < len - 1 && (len - i - 1) % 3 == 0)
			$("<b></b>").insertAfter(obj);

		// 利用动画变换数字
		obj.animate({
			backgroundPosition: "0 " + -400 + "px"
		}, 500, function() {
			obj.css({
				"background-position": "0 0"
			});
		}).animate({
			backgroundPosition: "0 " + y + "px"
		}, 500);
	}
};

function setNumberScreenBig(dom, number) {
	if (null == number || typeof number == "undefined" || number == "undefined") {
		return;
	}

	dom.empty().attr("num", number);
	var n = String(number),
		len = n.length;

	// 如果新的数字短于当前的，要移除多余的i
	if (dom.find("i").length > len) {
		dom.find("i:gt(" + (len - 1) + ")").remove();
	}

	// 移除千分位分隔符
	dom.find("b").remove();

	// 开始填充每一位
	for (var i = 0; i < len; ++i) {
		// 位数不足要补
		if (dom.find("i").length < len) {
			dom.append("<i class='screenBig'></i>");
		}

		var obj = dom.find("i").eq(i);
		var y = -40 * parseInt(n.charAt(i), 10);
		// 处理小数点
		if (isNaN(y)) {
			y = -40 * 10;
		}

		// 加分隔符
		if (i < len - 1 && (len - i - 1) % 3 == 0)
			$("<b></b>").insertAfter(obj);

		// 利用动画变换数字
		obj.animate({
			backgroundPosition: "0 " + -400 + "px"
		}, 500, function() {
			obj.css({
				"background-position": "0 0"
			});
		}).animate({
			backgroundPosition: "0 " + y + "px"
		}, 500);
	}
};

function setNumberScreenNormal(dom, number) {
	if (null == number || typeof number == "undefined" || number == "undefined") {
		return;
	}

	dom.empty().attr("num", number);
	var n = String(number),
		len = n.length;

	// 如果新的数字短于当前的，要移除多余的i
	if (dom.find("i").length > len) {
		dom.find("i:gt(" + (len - 1) + ")").remove();
	}

	// 移除千分位分隔符
	dom.find("b").remove();

	// 开始填充每一位
	for (var i = 0; i < len; ++i) {
		// 位数不足要补
		if (dom.find("i").length < len) {
			dom.append("<i class='screenNormal'></i>");
		}

		var obj = dom.find("i").eq(i);
		var y = -40 * parseInt(n.charAt(i), 10);
		// 处理小数点
		if (isNaN(y)) {
			y = -40 * 10;
		}

		// 加分隔符
		if (i < len - 1 && (len - i - 1) % 3 == 0)
			$("<b></b>").insertAfter(obj);

		// 利用动画变换数字
		obj.animate({
			backgroundPosition: "0 " + -400 + "px"
		}, 500, function() {
			obj.css({
				"background-position": "0 0"
			});
		}).animate({
			backgroundPosition: "0 " + y + "px"
		}, 500);
	}
};

var dtkl = {
	// 地图polygon属性(#808080\#749ae7)
	"polygonOption": {
		"strokeColor": "#808080",
		"strokeWeight": 1,
		"strokeOpacity": 1,
		"fillOpacity": 0.2,
		"fillColor": "#808080"
	}
}

/**
 * 
 * @Description : 回退
 * @return void
 * 
 * @author : wucm
 * @date : 2015年7月22日 下午1:40:03
 * 
 */
function back() {
	window.history.go(-1);
}

/**
 * 数据时间刷新
 */
function queryDataTime(tableName, timeFormat) {
	if (null == tableName) {
		return "";
	}

	if (null == timeFormat) {
		timeFormat = "yyyy-MM-dd hh:mm:ss";
	}

	var time;

	var url = CONTENT_PATH + "/com.asiainfo.dtkl.WarnAction.queryDataTime.invoke";
	Base.ajax({
		url: url,
		data: {
			"tableName": tableName
		},
		async: false,
		success: function(req) {
			if (null == req || null == req.result) {
				return "";
			}

			// 时间格式化
			time = req.result;
			time = time.replace(/-/g, "/");
			time = new Date(Date.parse(time)).format(timeFormat);
		}
	});

	return time;
}

/**
 * 数组排重
 */
Array.prototype.unique = function() {
	var res = [],
		hash = {};
	for (var i = 0, elem;
		(elem = this[i]) != null; i++) {
		if (!hash[elem]) {
			res.push(elem);
			hash[elem] = true;
		}
	}
	return res;
}

/**
 * 
 * @Description : 显示loading
 * @param message
 * @return void
 * 
 * @author : wucm
 * @date : 2015年7月2日 下午4:52:35
 * 
 */
function showLoading(message) {
	if (message == null || message == "" || message == undefined) {
		message = "正在查询信息，请稍候...";
	}

	var content = '<div id="tipcomtent" style="text-align:center">$1</div>';
	content = content.replace("$1", message);

	art.dialog({
		lock: true,
		width: 400,
		height: 50,
		content: content,
		cancel: false
	});
}

/**
 * 
 * @Description : 关闭loading
 * @return void
 * 
 * @author : wucm
 * @date : 2015年7月2日 下午4:52:46
 * 
 */
function closeLoading() {
	var list = art.dialog.list;
	for (var i in list) {
		list[i].close();
	};
}

/**
 * 日期格式化
 */
Date.prototype.format = function(format) {
	var o = {
		"M+": this.getMonth() + 1,
		"d+": this.getDate(),
		"h+": this.getHours(),
		"m+": this.getMinutes(),
		"s+": this.getSeconds(),
		"q+": Math.floor((this.getMonth() + 3) / 3),
		"S": this.getMilliseconds()
	}
	if (/(y+)/.test(format)) {
		format = format.replace(RegExp.$1, (this.getFullYear() + "")
			.substr(4 - RegExp.$1.length));
	}
	for (var k in o) {
		if (new RegExp("(" + k + ")").test(format)) {
			format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
		}
	}
	return format;
}

// 计算字符串长度方法，方法如下：_strGetLen.GetLength(Str)
var _strGetLen = {};
_strGetLen.GetLength = function(str) {
	var realLength = 0,
		len = str.length,
		charCode = -1;
	for (var i = 0; i < len; i++) {
		charCode = str.charCodeAt(i);
		if (charCode > 0 && charCode <= 128)
			realLength += 1;
		else
			realLength += 2;
		return realLength;
	}
}

/**
 * 
 * @Description : 删除左右两端的空格
 * @param str
 * @return any
 *
 * @author : wucm   
 * @date : 2015年8月19日 下午4:11:11 
 *
 */
function trim(str) {
	if (null == str) {
		return str;
	}
	return str.replace(/(^\s*)|(\s*$)/g, "");
}

function getToday() {
	var today = new Date();
	var year = today.getFullYear();
	var month = parseInt(today.getMonth()) + 1;
	if (month < 10) {
		month = "0" + month;
	}
	var day = today.getDate();
	if (day < 10) {
		day = "0" + day;
	}
	var todayStr = year + "/" + month + "/" + day;
	return todayStr;
}

/**
 * 获取传入参数间隔的日期，格式为yyyy/MM/dd
 * @param  {[type]} date    [description]
 * @param  {[type]} dayPlus [description]
 * @return {[type]}         [description]
 */
function getPlusDay(date, dayPlus) {
	var d = date;
	if (date instanceof Date) {
		d = date;
	} else if (typeof(date) == "string") {
		date = date.replace(/-/g, "").replace(/\\\\/g, "");
		d = new Date(Date.parse(date));
	}
	var n = d.getTime() + dayPlus * 24 * 60 * 60 * 1000;
	var p = new Date(n);
	var nnyear = p.getFullYear();
	var nnmonth = parseInt(p.getMonth()) + 1;
	if (nnmonth < 10) {
		nnmonth = "0" + nnmonth;
	}
	var nndate = p.getDate();
	if (nndate < 10) {
		nndate = "0" + nndate;
	}
	var dstr = nnyear + "/" + nnmonth + "/" + nndate;
	return dstr;
}

/**
 * 获取一个月前的日期
 * @return {[type]} [description]
 */
function getLastMonth() {
	return getPlusDay(new Date(), -30);
}

/**
 * 获取昨天的日期
 * @return {[type]} [description]
 */
function getYesterday() {
	return getPlusDay(new Date(), -1);
}

/**
 * 自定义backgroundPosition的animate，支持火狐，jQuery1.8以上版本
 */
(function($) {
	$.fx.step["backgroundPosition"] = function(fx) {
		if (typeof fx.end == 'string') {
			fx.start = getBgPos(fx.elem);
			// fx.end原本是一个string，这里将它转换成数组，就不会再进入这个if，也方便我们下面的计算
			// 例 "0px -21px"
			fx.end = [parseFloat(fx.end.split(" ")[0]),
				parseFloat(fx.end.split(" ")[1])
			];
		}
		// 这里fx.pos是根据传入的时间参数，从0到1变化的浮点数
		var nowPosX = ((fx.end[0] - fx.start[0]) * fx.pos) + fx.start[0] + fx.unit;
		var nowPosY = ((fx.end[1] - fx.start[1]) * fx.pos) + fx.start[1] + fx.unit;
		fx.elem.style.backgroundPosition = nowPosX + ' ' + nowPosY;

		/**
		 * 获取backgroundPosition数组[top, left]，没有单位
		 */
		function getBgPos(elem) {
			var top = 0.0;
			var left = 0.0;
			if ($(elem).css("backgroundPosition")) {
				// 例 "0px -21px"
				top = parseFloat($(elem).css("backgroundPosition").split(" ")[0]);
				left = parseFloat($(elem).css("backgroundPosition").split(" ")[1]);
			} else {
				top = parseFloat($(elem).css("backgroundPositionX"));
				left = parseFloat($(elem).css("backgroundPositionY"));
			}
			return [top, left];
		}
	}
})(jQuery);

/**
 * 设置cookie
 * @param {[type]} name  [description]
 * @param {[type]} value [description]
 */
function setCookie(name, value) {
	var Days = 30;
	var exp = new Date();
	exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
	document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}

/**
 * 获取cookie
 * @param  {[type]} name [description]
 * @return {[type]}      [description]
 */
function getCookie(name) {
	var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
	if (arr = document.cookie.match(reg)) {
		return unescape(arr[2]);
	} else {
		return null;
	}
}